import Vue from 'vue';
/*
* 为了提高组件的独立性与重用性，父组件会通过 props 向下传数据给子组件，
* 当子组件有事情要告诉父组件时会通过 $emit 事件告诉父组件。
* 如此确保每个组件都是独立在相对隔离的环境中运行，可以大幅提高组件的维护性。
* 但这套通讯原则对于兄弟组件之间的数据通讯就有一定的诟病。
* EventBus 又称为事件总线。在Vue中可以使用 EventBus 来作为沟通桥梁的概念，
* 就像是所有组件共用相同的事件中心，可以向该中心注册发送事件或接收事件，
* 所以组件都可以上下平行地通知其他组件
* 你需要做的只是引入 Vue 并导出它的一个实例（在这种情况下，我称它为 EventBus ）。
* 实质上它是一个不具备 DOM 的组件，它具有的仅仅只是它实例方法而已，因此它非常的轻便。
* 在需要发出事件的组件实例化bus，然后使用$emit来发送事件，而需要接受时间的组件也要实例化bus
* 然后用$on来接收事件，并做操作

* */
// 使用 Event Bus
const bus = new Vue();

export default bus;